home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / share / alsa / alsa.conf next >
Encoding:
Text File  |  2007-04-10  |  7.5 KB  |  552 lines

  1. #
  2. #  ALSA library configuration file
  3. #
  4.  
  5. # pre-load the configuration files
  6.  
  7. @hooks [
  8.     {
  9.         func load
  10.         files [
  11.             "/etc/asound.conf"
  12.             "~/.asoundrc"
  13.         ]
  14.         errors false
  15.     }
  16. ]
  17.  
  18. # load card-specific configuration files (on request)
  19.  
  20. cards.@hooks [
  21.     {
  22.         func load
  23.         files [
  24.             {
  25.                 @func concat
  26.                 strings [
  27.                     { @func datadir }
  28.                     "/cards/aliases.conf"
  29.                 ]
  30.             }
  31.         ]
  32.     }
  33.     {
  34.         func load_for_all_cards
  35.         files [
  36.             {
  37.                 @func concat
  38.                 strings [
  39.                     { @func datadir }
  40.                     "/cards/"
  41.                     { @func private_string }
  42.                     ".conf"
  43.                 ]
  44.             }
  45.         ]
  46.         errors false
  47.     }
  48. ]
  49.  
  50. # defaults
  51.  
  52. defaults.ctl.card 0
  53. defaults.pcm.card 0
  54. defaults.pcm.device 0
  55. defaults.pcm.subdevice -1
  56. defaults.pcm.nonblock 1
  57. defaults.pcm.ipc_key 5678293
  58. defaults.pcm.ipc_gid audio
  59. defaults.pcm.ipc_perm 0660
  60. defaults.pcm.dmix_max_periods 0
  61. defaults.pcm.dmix_rate 48000
  62. defaults.pcm.dmix_format S16_LE
  63. defaults.pcm.front.card defaults.pcm.card
  64. defaults.pcm.front.device defaults.pcm.device
  65. defaults.pcm.rear.card defaults.pcm.card
  66. defaults.pcm.rear.device defaults.pcm.device
  67. defaults.pcm.center_lfe.card defaults.pcm.card
  68. defaults.pcm.center_lfe.device defaults.pcm.device
  69. defaults.pcm.side.card defaults.pcm.card
  70. defaults.pcm.side.device defaults.pcm.device
  71. defaults.pcm.surround40.card defaults.pcm.card
  72. defaults.pcm.surround40.device defaults.pcm.device
  73. defaults.pcm.surround41.card defaults.pcm.card
  74. defaults.pcm.surround41.device defaults.pcm.device
  75. defaults.pcm.surround50.card defaults.pcm.card
  76. defaults.pcm.surround50.device defaults.pcm.device
  77. defaults.pcm.surround51.card defaults.pcm.card
  78. defaults.pcm.surround51.device defaults.pcm.device
  79. defaults.pcm.surround71.card defaults.pcm.card
  80. defaults.pcm.surround71.device defaults.pcm.device
  81. defaults.pcm.iec958.card defaults.pcm.card
  82. defaults.pcm.iec958.device defaults.pcm.device
  83. defaults.pcm.modem.card defaults.pcm.card
  84. defaults.pcm.modem.device defaults.pcm.device
  85. defaults.rawmidi.card 0
  86. defaults.rawmidi.device 0
  87. defaults.rawmidi.subdevice -1
  88. defaults.hwdep.card 0
  89. defaults.hwdep.device 0
  90. defaults.timer.class 2
  91. defaults.timer.sclass 0
  92. defaults.timer.card 0
  93. defaults.timer.device 0
  94. defaults.timer.subdevice 0
  95.  
  96. #
  97. #  PCM interface
  98. #
  99.  
  100. pcm.hw {
  101.     @args [ CARD DEV SUBDEV ]
  102.     @args.CARD {
  103.         type string
  104.         default {
  105.             @func getenv
  106.             vars [
  107.                 ALSA_PCM_CARD
  108.                 ALSA_CARD
  109.             ]
  110.             default {
  111.                 @func refer
  112.                 name defaults.pcm.card
  113.             }
  114.         }
  115.     }
  116.     @args.DEV {
  117.         type integer
  118.         default {
  119.             @func igetenv
  120.             vars [
  121.                 ALSA_PCM_DEVICE
  122.             ]
  123.             default {
  124.                 @func refer
  125.                 name defaults.pcm.device
  126.             }
  127.         }
  128.     }
  129.     @args.SUBDEV {
  130.         type integer
  131.         default {
  132.             @func refer
  133.             name defaults.pcm.subdevice
  134.         }
  135.     }        
  136.     type hw
  137.     card $CARD
  138.     device $DEV
  139.     subdevice $SUBDEV
  140. }
  141.  
  142. pcm.plughw {
  143.     @args [ CARD DEV SUBDEV ]
  144.     @args.CARD {
  145.         type string
  146.         default {
  147.             @func getenv
  148.             vars [
  149.                 ALSA_PCM_CARD
  150.                 ALSA_CARD
  151.             ]
  152.             default {
  153.                 @func refer
  154.                 name defaults.pcm.card
  155.             }
  156.         }
  157.     }
  158.     @args.DEV {
  159.         type integer
  160.         default {
  161.             @func igetenv
  162.             vars [
  163.                 ALSA_PCM_DEVICE
  164.             ]
  165.             default {
  166.                 @func refer
  167.                 name defaults.pcm.device
  168.             }
  169.         }
  170.     }
  171.     @args.SUBDEV {
  172.         type integer
  173.         default {
  174.             @func refer
  175.             name defaults.pcm.subdevice
  176.         }
  177.     }        
  178.     type plug
  179.     slave.pcm {
  180.         type hw
  181.         card $CARD
  182.         device $DEV
  183.         subdevice $SUBDEV
  184.     }
  185. }
  186.  
  187. pcm.plug {
  188.     @args [ SLAVE ]
  189.     @args.SLAVE {
  190.         type string
  191.     }
  192.     type plug
  193.     slave.pcm $SLAVE
  194. }
  195.  
  196. pcm.shm {
  197.     @args [ SOCKET PCM ]
  198.     @args.SOCKET {
  199.         type string
  200.     }
  201.     @args.PCM {
  202.         type string
  203.     }
  204.     type shm
  205.     server $SOCKET
  206.     pcm $PCM
  207. }
  208.  
  209. pcm.tee {
  210.     @args [ SLAVE FILE FORMAT ]
  211.     @args.SLAVE {
  212.         type string
  213.     }
  214.     @args.FILE {
  215.         type string
  216.     }
  217.     @args.FORMAT {
  218.         type string
  219.         default raw
  220.     }
  221.     type file
  222.     slave.pcm $SLAVE
  223.     file $FILE
  224.     format $FORMAT
  225. }
  226.  
  227. pcm.file {
  228.     @args [ FILE FORMAT ]
  229.     @args.FILE {
  230.         type string
  231.     }
  232.     @args.FORMAT {
  233.         type string
  234.         default raw
  235.     }
  236.     type file
  237.     slave.pcm null
  238.     file $FILE
  239.     format $FORMAT
  240. }
  241.  
  242. pcm.null {
  243.     type null
  244. }
  245.  
  246. # redirect to load-on-demand extended pcm definitions
  247. pcm.cards cards.pcm
  248. # some links for easy use
  249. pcm.front cards.pcm.front
  250. pcm.rear cards.pcm.rear
  251. pcm.center_lfe cards.pcm.center_lfe
  252. pcm.side cards.pcm.side
  253. pcm.surround40 cards.pcm.surround40
  254. pcm.surround41 cards.pcm.surround41
  255. pcm.surround50 cards.pcm.surround50
  256. pcm.surround51 cards.pcm.surround51
  257. pcm.surround71 cards.pcm.surround71
  258. pcm.iec958 cards.pcm.iec958
  259. pcm.spdif cards.pcm.iec958
  260. pcm.modem cards.pcm.modem
  261. pcm.phoneline cards.pcm.phoneline
  262.  
  263. pcm.default cards.pcm.default
  264. pcm.dmix cards.pcm.dmix
  265. pcm.dsnoop cards.pcm.dsnoop
  266.  
  267. #
  268. #  Control interface
  269. #
  270.     
  271. ctl.hw {
  272.     @args[ CARD ]
  273.     @args.CARD {
  274.         type string
  275.         default {
  276.             @func getenv
  277.             vars [
  278.                 ALSA_CTL_CARD
  279.                 ALSA_CARD
  280.             ]
  281.             default {
  282.                 @func refer
  283.                 name defaults.ctl.card
  284.             }
  285.         }
  286.     }
  287.     type hw
  288.     card $CARD
  289. }
  290.  
  291. ctl.shm {
  292.     @args [ SOCKET CTL ]
  293.     @args.SOCKET {
  294.         type string
  295.     }
  296.     @args.CTL {
  297.         type string
  298.     }
  299.     type shm
  300.     server $SOCKET
  301.     ctl $CTL
  302. }
  303.  
  304. ctl.default {
  305.     type hw
  306.     card {
  307.         @func getenv
  308.         vars [
  309.             ALSA_CTL_CARD
  310.             ALSA_CARD
  311.         ]
  312.         default {
  313.             @func refer
  314.             name defaults.ctl.card
  315.         }
  316.     }
  317. }
  318.  
  319. #
  320. #  RawMidi interface
  321. #
  322.  
  323. rawmidi.hw {
  324.     @args [ CARD DEV SUBDEV ]
  325.     @args.CARD {
  326.         type string
  327.         default {
  328.             @func getenv
  329.             vars [
  330.                 ALSA_RAWMIDI_CARD
  331.                 ALSA_CARD
  332.             ]
  333.             default {
  334.                 @func refer
  335.                 name defaults.rawmidi.card
  336.             }
  337.         }
  338.     }
  339.     @args.DEV {
  340.         type integer
  341.         default {
  342.             @func igetenv
  343.             vars [
  344.                 ALSA_RAWMIDI_DEVICE
  345.             ]
  346.             default {
  347.                 @func refer
  348.                 name defaults.rawmidi.device
  349.             }
  350.         }
  351.     }
  352.     @args.SUBDEV {
  353.         type integer
  354.         default -1
  355.     }
  356.     type hw
  357.     card $CARD
  358.     device $DEV
  359.     subdevice $SUBDEV
  360. }
  361.  
  362. rawmidi.default {
  363.     type hw
  364.     card {
  365.         @func getenv
  366.         vars [
  367.             ALSA_RAWMIDI_CARD
  368.             ALSA_CARD
  369.         ]
  370.         default {
  371.             @func refer
  372.             name defaults.rawmidi.card
  373.         }
  374.     }
  375.     device {
  376.         @func igetenv
  377.         vars [
  378.             ALSA_RAWMIDI_DEVICE
  379.         ]
  380.         default {
  381.             @func refer
  382.             name defaults.rawmidi.device
  383.         }
  384.     }
  385. }
  386.  
  387. rawmidi.virtual {
  388.     @args [ MERGE ]
  389.     @args.MERGE {
  390.         type string
  391.         default 1
  392.     }
  393.     type virtual
  394.     merge $MERGE
  395. }
  396.  
  397. #
  398. #  Sequencer interface
  399. #
  400.  
  401. seq.default {
  402.     type hw
  403. }
  404.  
  405. seq.hw {
  406.     type hw
  407. }
  408.  
  409. #
  410. #  HwDep interface
  411. #
  412.  
  413. hwdep.hw {
  414.     @args [ CARD DEV ]
  415.     @args.CARD {
  416.         type string
  417.         default {
  418.             @func getenv
  419.             vars [
  420.                 ALSA_HWDEP_CARD
  421.                 ALSA_CARD
  422.             ]
  423.             default {
  424.                 @func refer
  425.                 name defaults.hwdep.card
  426.             }
  427.         }
  428.     }
  429.     @args.DEV {
  430.         type integer
  431.         default {
  432.             @func igetenv
  433.             vars [
  434.                 ALSA_HWDEP_DEVICE
  435.             ]
  436.             default {
  437.                 @func refer
  438.                 name defaults.hwdep.device
  439.             }
  440.         }
  441.     }
  442.     type hw
  443.     card $CARD
  444.     device $DEV
  445. }
  446.  
  447. hwdep.default {
  448.     type hw
  449.     card {
  450.         @func getenv
  451.         vars [
  452.             ALSA_HWDEP_CARD
  453.             ALSA_CARD
  454.         ]
  455.         default {
  456.             @func refer
  457.             name defaults.hwdep.card
  458.         }
  459.     }
  460.     device {
  461.         @func igetenv
  462.         vars [
  463.             ALSA_HWDEP_DEVICE
  464.         ]
  465.         default {
  466.             @func refer
  467.             name defaults.hwdep.device
  468.         }
  469.     }
  470. }
  471.  
  472. #
  473. #  Timer interface
  474. #
  475.  
  476. timer_query.hw {
  477.     type hw
  478. }
  479.  
  480. timer_query.default {
  481.     type hw
  482. }
  483.  
  484. timer.hw {
  485.     @args [ CLASS SCLASS CARD DEV SUBDEV ]
  486.     @args.CLASS {
  487.         type integer
  488.         default {
  489.             @func refer
  490.             name defaults.timer.class
  491.         }
  492.     }
  493.     @args.SCLASS {
  494.         type integer
  495.         default {
  496.             @func refer
  497.             name defaults.timer.sclass
  498.         }
  499.     }
  500.     @args.CARD {
  501.         type string
  502.         default {
  503.             @func refer
  504.             name defaults.timer.card
  505.         }
  506.     }
  507.     @args.DEV {
  508.         type integer
  509.         default {
  510.             @func refer
  511.             name defaults.timer.device
  512.         }
  513.     }
  514.     @args.SUBDEV {
  515.         type integer
  516.         default {
  517.             @func refer
  518.             name defaults.timer.subdevice
  519.         }
  520.     }
  521.     type hw
  522.     class $CLASS
  523.     sclass $SCLASS
  524.     card $CARD
  525.     device $DEV
  526.     subdevice $SUBDEV
  527. }
  528.  
  529. timer.default {
  530.     type hw
  531.     class {
  532.         @func refer
  533.         name defaults.timer.class
  534.     }
  535.     sclass {
  536.         @func refer
  537.         name defaults.timer.sclass
  538.     }
  539.     card {
  540.         @func refer
  541.         name defaults.timer.card
  542.     }
  543.     device {
  544.         @func refer
  545.         name defaults.timer.device
  546.     }
  547.     subdevice {
  548.         @func refer
  549.         name defaults.timer.subdevice
  550.     }
  551. }
  552.